From 0b3b81a8bf326639e8f9ef90ae4b9823d472e5ad Mon Sep 17 00:00:00 2001 From: Carlos Garnacho Date: Sun, 11 Mar 2018 13:54:54 +0100 Subject: [PATCH] inspector: Use search bar API to capture key events from the toplevel --- gtk/inspector/object-tree.c | 11 ++++++----- gtk/inspector/resource-list.c | 11 ++++++----- gtk/inspector/statistics.c | 13 ++++++------- 3 files changed, 18 insertions(+), 17 deletions(-) diff --git a/gtk/inspector/object-tree.c b/gtk/inspector/object-tree.c index efb33de6ea..0c04f8ba96 100644 --- a/gtk/inspector/object-tree.c +++ b/gtk/inspector/object-tree.c @@ -784,18 +784,16 @@ key_pressed (GtkEventController *controller, return GDK_EVENT_STOP; } - - return gtk_search_bar_handle_event (GTK_SEARCH_BAR (wt->priv->search_bar), - gtk_get_current_event ()); } - else - return GDK_EVENT_PROPAGATE; + + return GDK_EVENT_PROPAGATE; } static void on_hierarchy_changed (GtkWidget *widget, GtkWidget *previous_toplevel) { + GtkInspectorObjectTree *wt = GTK_INSPECTOR_OBJECT_TREE (widget); GtkEventController *controller; GtkWidget *toplevel; @@ -806,6 +804,9 @@ on_hierarchy_changed (GtkWidget *widget, controller = gtk_event_controller_key_new (toplevel); g_object_set_data_full (G_OBJECT (toplevel), "controller", controller, g_object_unref); g_signal_connect (controller, "key-pressed", G_CALLBACK (key_pressed), widget); + + gtk_search_bar_set_key_capture_widget (GTK_SEARCH_BAR (wt->priv->search_bar), + toplevel); } static void diff --git a/gtk/inspector/resource-list.c b/gtk/inspector/resource-list.c index c7aec3241e..141231f01f 100644 --- a/gtk/inspector/resource-list.c +++ b/gtk/inspector/resource-list.c @@ -464,18 +464,16 @@ key_pressed (GtkEventController *controller, return GDK_EVENT_STOP; } - - return gtk_search_bar_handle_event (GTK_SEARCH_BAR (sl->priv->search_bar), - gtk_get_current_event ()); } - else - return GDK_EVENT_PROPAGATE; + + return GDK_EVENT_PROPAGATE; } static void on_hierarchy_changed (GtkWidget *widget, GtkWidget *previous_toplevel) { + GtkInspectorResourceList *sl = GTK_INSPECTOR_RESOURCE_LIST (widget); GtkEventController *controller; GtkWidget *toplevel; @@ -486,6 +484,9 @@ on_hierarchy_changed (GtkWidget *widget, controller = gtk_event_controller_key_new (toplevel); g_object_set_data_full (G_OBJECT (toplevel), "controller", controller, g_object_unref); g_signal_connect (controller, "key-pressed", G_CALLBACK (key_pressed), widget); + + gtk_search_bar_set_key_capture_widget (GTK_SEARCH_BAR (sl->priv->search_bar), + toplevel); } static void diff --git a/gtk/inspector/statistics.c b/gtk/inspector/statistics.c index 47fc45ccfb..a6c8482652 100644 --- a/gtk/inspector/statistics.c +++ b/gtk/inspector/statistics.c @@ -278,15 +278,10 @@ key_pressed (GtkEventController *controller, return GDK_EVENT_STOP; } - else - return GDK_EVENT_PROPAGATE; } - - return gtk_search_bar_handle_event (GTK_SEARCH_BAR (sl->priv->search_bar), - gtk_get_current_event ()); } - else - return GDK_EVENT_PROPAGATE; + + return GDK_EVENT_PROPAGATE; } static gboolean @@ -329,6 +324,7 @@ static void hierarchy_changed (GtkWidget *widget, GtkWidget *previous_toplevel) { + GtkInspectorStatistics *sl = GTK_INSPECTOR_STATISTICS (widget); GtkEventController *controller; GtkWidget *toplevel; @@ -339,6 +335,9 @@ hierarchy_changed (GtkWidget *widget, controller = gtk_event_controller_key_new (toplevel); g_object_set_data_full (G_OBJECT (toplevel), "controller", controller, g_object_unref); g_signal_connect (controller, "key-pressed", G_CALLBACK (key_pressed), widget); + + gtk_search_bar_set_key_capture_widget (GTK_SEARCH_BAR (sl->priv->search_bar), + toplevel); } static void -- 2.30.2